home *** CD-ROM | disk | FTP | other *** search
- <?xml version="1.0" encoding="utf-8"?>
- <effect label="CurveEffect: Apply curve">
- <description>
- This Effect adds piecewise cubic spline interpolation capability so users can specify curves with a sparse set of (x, y) control points.
-
- The parameters: CurvePt0, CurvePt1, CurvePt2, CurvePt3 are the control points for the corresponding channels.
-
- The possible values for the parameters are:
-
- (a)
- A 2D array of floats [2 x point count], so that each point is represented by a pair (x, y).
- The floating point values can be VT_R4, VT_R8, or VT_VARIANT resolving to VT_R4 or VT_R8.
- The point count must be greater than or equal to two and less than or equal to 18.
- The x-coordinates must all differ from each other by at least 0.001.
- The control points may be in any order in the array.
-
- (b)
- A 1D array of floats: x0, y0, x1, y1, etc.
-
- (c)
- An empty set (VT_EMPTY) will generate a ramp: (0.0, 0.0) to (1.0, 1.0).
- </description>
-
- <property name="CurvePts0" type="float[]" default="0,0,1,1" label="Control points for Red curve"/>
- <property name="CurvePts1" type="float[]" default="0,0,1,1" label="Control points for Green curve"/>
- <property name="CurvePts2" type="float[]" default="0,0,1,1" label="Control points for Blue curve"/>
- <property name="CurvePts3" type="float[]" default="0,0,1,1" label="Control points for Alpha curve"/>
-
- <description>
- Curve inversion allows processing of data backwards through the curve set. This is permitted
- only for certain types of curves:
- a) All curves must be monotonic within the x-interval [0, 1].
- b) Within the x-interval [0, 1], the y-value of the curves must be in the range [0, 1].
- c) The ClampOutput property must be false.
- d) The CurveExtension property must be Extrapolate.
- This property applies to all four channels.
- </description>
- <property name="Invert" type="bool" default="false" label="Invert curve"/>
-
- <description>
- Enables or disables clamping of the y-output. If false, no clamping occurs (e.g. CaptureOne
- curves behavior). If true, the y-output is clamped to the range [0.0, 1.0] (e.g. PSD curves
- behavior). This property applies to all four channels.
- </description>
- <property name="ClampOutput" type="bool" default="false" label="Clamp output"/>
-
- <description>
- Specifies the behavior of the curve to the left of the first control point, and to the right
- of the last control point. Extrapolate is used for CaptureOne, and Clamp is used for PSD. This
- property applies to all four channels.
- </description>
- <property name="CurveExtension" type="int" default="0" label="Curve extension">
- <choice>Extrapolate</choice>
- <choice>Clamp</choice>
- </property>
-
- <description>
- This Effect also supports readonly access to the underlying dense curve data
- This us useful for supporting the UI display of the dense curve points
- </description>
- <property name="Curve0" type="float[]" readonly="1" private="1"/>
- <property name="Curve1" type="float[]" readonly="1" private="1"/>
- <property name="Curve2" type="float[]" readonly="1" private="1"/>
- <property name="Curve3" type="float[]" readonly="1" private="1"/>
-
- <description>
- For three-point curves, there is a difference between CaptureOne and PSD. The following
- property instructs the effect which behavior is wanted. False implies PSD compatibility.
- </description>
- <property name="CaptureOneCompatible" type="bool" default="true" label="CaptureOne compatible"/>
- </effect>
-